package game;

public class ChanceController {

	public static ChanceCard[] ChanceCards = {
		new ChanceCard( "MoveBack", "Ryk tre felter tilbage", -3), 
		new ChanceCard( "Move", "Ryk frem til Grønningen. Hvis De passerer START, indkasser da kr.4000.", 25),
		new ChanceCard( "Move", "Tag ind på Rådhuspladsen.", 40),
		new ChanceCard( "Move", "Ryk frem til Frederiksberg Allé. Hvis De passerer START indkasser kr. 4000.", 11),
		new ChanceCard( "MoveToJail", "Gå i fængsel. Ryk direkte til fængslet. Selv om De passerer START indkasserer De IKKE kr. 4000.", 11),
		new ChanceCard( "Move", "Ryk frem til START", 1),//5Ryk
		new ChanceCard( "MoveToShip", "Tag med den nærmeste færge - Flyt brikken frem, og hvis De passerer START indkasser da kr. 4000.", 0),
		new ChanceCard( "MoveToJail", "Gå i fængsel. Ryk direkte til fængslet. Selv om De passerer START indkasserer De IKKE kr. 4000.", 11),//7Ryk
		//new ChanceCard("Pardon", "i anledning af kongens fødselsdag benådes De herved for fængsel. Dette kort kan opbevares, indtil De får brug for det, eller De kan sælge det", 100),//8
		//new ChanceCard("Pardon", "i anledning af kongens fødselsdag benådes De herved for fængsel. Dette kort kan opbevares, indtil De får brug for det, eller De kan sælge det", 100),
		new ChanceCard("Receive","Grundet dyrtiden har De fået gangeforhøjelse. Modtag kr.1000", 1000),//8Modtag
		new ChanceCard("Receive","De har vundet i Klasselotteriet. Modtag kr. 500", 500),
		new ChanceCard("Receive","Kommunen har eftergivet et kvartals. Hæv i banken kr.3000", 3000),
		new ChanceCard("Receive","De modtager Derers aktieudbytte. Modtag kr.1000 af banken.", 1000),
		new ChanceCard("Receive","Deres præmieobligation er kommet ud. De modtager kr.1000 af banken.", 1000),
		new ChanceCard("Receive","Modtag udbytte af Deres aktier kr.1000", 1000),//13 Modtag
		new ChanceCard("Receive","De havde enrække med elleve rigtige i tipning. Modtag kr.1000", 1000),
		new ChanceCard("Receive","Værdien af egen avl fra nyttehaven udgør kr.200, som De modtager af banken", 200),
		new ChanceCard("Receive","Modtag udbytte af Deres aktier kr.1000", 1000),
		new ChanceCard("Receive","Deres præmieobligation er kommet ud. De modtager kr.1000 af banken", 1000),//17Modtag
		//new ChanceCard("ReceiveFromAll","Det er Deres fødselsdag. Modtag af hver medspiller kr.200", 200),
		new ChanceCard("Pay", "De har kørt frem for FULD STOP. Betal kr.1000 i bøde", 1000),//18Betal
		new ChanceCard("Pay","Betal Deres bilforsikring kr.1000", 1000),
		new ChanceCard("Pay", "Betal kr.3000 for reparation af Deres vogn", 3000),
		new ChanceCard("Pay", "Betal kr.3000 for reparation af Deres vogn", 3000 ),
		new ChanceCard("Pay","De har modtaget Deres tandlægeregning. Betal kr.2000", 2000),//22 Betal
		new ChanceCard("Pay","De har været en tur i udlandet og haft for mange cigaretter med hjem. Betal told kr.200", 200),
		new ChanceCard("Pay"," De har måttet vedtage en parkeringsbøde. Betal kr.200 i bøde.", 200),//24 Betal
		new ChanceCard("RememberTax1","Oliepriserne er steget, og De skal betale. kr.500 pr.hus, kr.2000 pr. hotel", 0),
		new ChanceCard("RememberTax2","Ejendomsskatterne er steget, ekstraudgifterne er: kr. 800 pr.hus, kr.2300 pr.hotel", 0),
		new ChanceCard("Grant", "De modtager MATADOR-LEGATET FOR VÆRDIG TRÆNGENDE, stort kr.40000. Ved værdig trængende forstås, at Deres formue, dvs. Deres kontante penge+skøder+bygninger ikke overstiger kr15000.", 15000),
		new ChanceCard("MoveToShipDoubleRent", "Ryk brikken frem til det nærmeste rederi og betal ejeren to gange den leje, han ellers er berettiget til. Hvis selskabet ikke ejes af nogen kan De købe det af banken.", 10101010),
		new ChanceCard("MoveToShipDoubleRent", "Ryk brikken frem til det nærmeste rederi og betal ejeren to gange den leje, han ellers er berettiget til. Hvis selskabet ikke ejes af nogen kan De købe det af banken.", 10101010) //29
	};
	
	private static boolean[] cardsDrawn = new boolean[ChanceCards.length];
	
	public static ChanceCard getChanceCard()
	{
		
		boolean allHasBeenDrawn = true;
		for(int i = 0 ; i < cardsDrawn.length ; i++){
		
			if(cardsDrawn[i]==false)
			{
				allHasBeenDrawn = false;
			}	
		}
		
		int randomInt = 0;
		
		if(allHasBeenDrawn)
		{
			
			cardsDrawn = new boolean[ChanceCards.length];
		}
		else
		{
			randomInt = (int)(Math.random()*ChanceCards.length);
			while(cardsDrawn[randomInt]==true)
			{
				randomInt = (int)(Math.random()*ChanceCards.length);
			}
		}
		
		cardsDrawn[randomInt]=true;
		return ChanceCards[randomInt];
		
	}

}
